package cn.itheima.edu.info.manger.dao;

import cn.itheima.edu.info.manger.domain.Teacher;

/**
 * 老师的Dao层
 */
public class TeacherDao {
    //定义一个数组容器用于储存老师对象信息
    private static Teacher[] teachers = new Teacher[5];

    /**
     * 该方法是添加老师信息的方法
     *
     * @param teacher 传递进来的老师类对象信息
     */
    public void addTeacher(Teacher teacher) {
        //1.遍历数组容器
        for (int i = 0; i < teachers.length; i++) {
            //2.判断当前元素是否为空，不为null将老师对象添加给该索引,添加成功返回去一个true，否者返回一个
            if (teachers[i] == null) {
                teachers[i] = teacher;
                break;


            }
        }

    }

    /**
     * 获取容器的方法
     * @return 返回一个老师类型数组
     */
    public Teacher[] getteachers() {
        return teachers;


    }

    /**
     * 删除老师id方法
     * @param teacherid 用户要删除的老师id
     */
    public  void  deleteTeacher(String teacherid) {
        //遍历数组容器，判断用户id所在的索引位置并删除
        int index = getindex(teacherid);
        //使用null对获取到的索引元素进行覆盖
        teachers[index]=null;


    }

    /**
     *获取输入id所在的索引位置方法
     *
     */
    public int getindex(String id) {
        //假设索引等于-1；
        int index=-1;
        //遍历数组元素，判断那个元素的id等于用户录入的id，并将索引值赋给index，并返回。
        for (int i = 0; i < teachers.length; i++) {
            if(teachers[i]!=null&&teachers[i].getId().equals(id)){
                index=i;
            }
        }
        return index;
    }

    public void updateTeacher(Teacher teacher, String upid) {
        //调用getindex方法获取用户录入id的索引位置 并进行修改
        int index= getindex(upid);
        //修改该索引位置的老师信息
        teachers[index]=teacher;
    }
}
